package com.amt.util;

import com.alibaba.fastjson.JSON;
import org.springframework.stereotype.Component;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @Title: JsonUtil
 * @Package com.amt.util
 * @Description: TODO(fastjson工具类)
 * @Author 江伟
 * @Date 2021/4/19 11:30
 * Copyright (c) 1994-2021 Scjydz.com All Rights Reserved.
 **/
@Component
public class JsonUtil {

    /**
     * json转对象
     * @param json json串
     * @param className 类名
     * @return
     */
    public static Object jsonToObject(String json, Class className) {
        return JSON.parseObject(json, className);
    }

    /**
     * json转list
     * @param json json串
     * @param className 类名
     * @return
     */
    public static List jsonToList(String json, Class className) {
        return JSON.parseArray(json, className);
    }

    /**
     * json转Map
     * @param json json串
     * @return
     */
    public static Map jsonToMap(String json) {
        return JSON.parseObject(json, Map.class);
    }

    /**
     * json转HashMap
     * @param json json串
     * @return
     */
    public static Map jsonToHashMap(String json) {
        return JSON.parseObject(json, HashMap.class);
    }

    /**
     * list转josn
     * @param list
     * @return
     */
    public static String listToJson(List list) {
        return  JSON.toJSONString(list);
    }

    /**
     * 对象转json
     * @param object
     * @return
     */
    public static String objectToJson(Object object) {
        return JSON.toJSONString(object);
    }

}
